package com.laolang.pluto.module.sys.entity;

import java.time.LocalDateTime;
import lombok.Builder;
import lombok.Data;

/**
 * @author laolang
 * @date 2021-08-05 06:39
 */
@Builder
@Data
public class SysOperLog {


    /**
     *
     */
    private Long id;

    /**
     * 模块名称
     */
    private String moduleName;

    /**
     * <p>业务类型</p>
     * <ul>
     *     <li>0: 其他</li>
     *     <li>1: 查询</li>
     *     <li>2: 新增</li>
     *     <li>3: 修改</li>
     *     <li>4: 删除</li>
     * </ul>
     */
    private Integer businessType;

    /**
     * 方法名称
     */
    private String method;

    /**
     * 请求方法
     */
    private String requestMethod;

    /**
     * <p>操作渠道</p>
     * <ul>
     *     <li>0: 其他</li>
     *     <li>1: 后台</li>
     *     <li>2: 手机端</li>
     * </ul>
     */
    private Integer operatorChannel;

    /**
     * 用户名
     */
    private String operUsername;

    /**
     * 用户账号 id
     */
    private Long operUserId;

    /**
     * 租户 id
     */
    private Long operTenantId;

    /**
     * 部门名称
     */
    private String operDeptName;

    /**
     * 部门 id
     */
    private Long operDeptId;

    /**
     * 请求 url
     */
    private String operUrl;

    /**
     * 请求 ip
     */
    private String operIp;

    /**
     * 操作地点
     */
    private String operLocation;

    /**
     * 请求参数
     */
    private String requestParam;

    /**
     * json 响应
     */
    private String responseResult;

    /**
     * <p>操作状态</p>
     * <ul>
     *     <li>0: 正常</li>
     *     <li>1: 异常</li>
     * </ul>
     */
    private String operStatus;

    /**
     * 业务异常状态码
     */
    private String bizCode;

    /**
     * 错误消息
     */
    private String errorMsg;

    /**
     * 操作时间
     */
    private LocalDateTime operTime;
}
